#! /bin/sh /usr/share/dpatch/dpatch-run
## 04-64bit.dpatch by Michael Karcher
## <debian@mkarcher.dialup.fu-berlin.de>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: Replace declare.h by a generic stdint based version.

@DPATCH@
diff -urNad unace-nonfree-2.5~/source/base/all/declare.h unace-nonfree-2.5/source/base/all/declare.h
--- unace-nonfree-2.5~/source/base/all/declare.h	2007-11-06 00:11:47.000000000 +0100
+++ unace-nonfree-2.5/source/base/all/declare.h	2007-11-06 00:13:18.498574104 +0100
@@ -7,76 +7,47 @@
 #ifndef _DECLARE_H_INCLUDED
 #define _DECLARE_H_INCLUDED
 
-#if !defined(__OS2__) && !defined(_WINDOWS_)
-  typedef int             BOOL;
-
-  typedef char               CHAR;
-  typedef unsigned char      UCHAR;
-  typedef UCHAR             *PUCHAR;
-  typedef char              *PSZ;
-
-  typedef short              SHORT;
-  typedef unsigned short     USHORT;
-  typedef USHORT            *PUSHORT;
-
-  typedef long               LONG;
-  typedef unsigned long      ULONG;
-
-  typedef ULONG             *PULONG;
-
-  typedef int                INT;
-  typedef unsigned int       UINT;
-  typedef unsigned int      *PUINT;
+#include <stdint.h>
 
-  typedef CHAR              *LPSTR;
-#endif
+typedef int             BOOL;
+typedef BOOL           *PBOOL;
 
-#if __WATCOMC__==1060
-  typedef long               __int64[2];
-  typedef __int64            LONGLONG;
-  typedef LONGLONG          *PLONGLONG;
-  typedef __int64            ULONGLONG;
-  typedef ULONGLONG          DWORDLONG;
-#else
-  #if !defined(_WINDOWS_)
-    #if !defined(__WATCOMC__) && !defined(__int64)
-      #define __int64  long long
-    #endif
+typedef char               CHAR;
+typedef CHAR              *PCHAR;
+typedef unsigned char      UCHAR;
+typedef UCHAR             *PUCHAR;
+typedef signed char        SCHAR;
+typedef CHAR              *PSZ;
+typedef CHAR              *LPSTR;
 
-    typedef __int64            LONGLONG;
-    typedef LONGLONG          *PLONGLONG;
-    typedef unsigned __int64   ULONGLONG;
-    typedef ULONGLONG          DWORDLONG;
-  #endif
-#endif
+typedef int                INT;
+typedef INT               *PINT;
+typedef unsigned int       UINT;
+typedef unsigned int      *PUINT;
 
+typedef int16_t            SHORT;
+typedef SHORT             *PSHORT;
+typedef uint16_t           USHORT;
+typedef USHORT            *PUSHORT;
 
-#if !defined(_WINDOWS_)
-  typedef BOOL           *PBOOL;
-  typedef INT            *PINT;
-#endif
+typedef int32_t            LONG;
+typedef LONG              *PLONG;
+typedef uint32_t           ULONG;
+typedef ULONG             *PULONG;
 
-#if !defined(__wtypes_h__)
-  typedef void           *PVOID;
-  typedef CHAR           *PCHAR;
-  typedef SHORT          *PSHORT;
-  typedef LONG           *PLONG;
-  typedef ULONGLONG      *PULONGLONG;
-#endif
+typedef int64_t            LONGLONG;
+typedef LONGLONG          *PLONGLONG;
+typedef uint64_t           ULONGLONG;
+typedef ULONGLONG         *PULONGLONG;
 
-#if defined(_GNU_H_WINDOWS32_BASE)
-  typedef LONGLONG  	  ULONGLONG;
-  typedef ULONGLONG      *PULONGLONG;
-#endif
+typedef void              *PVOID;
 
-typedef signed char     SCHAR;
+/* Dear ACE team, please clean your code to remove the following types */
+typedef LONGLONG           __int64;
+typedef ULONGLONG          DWORDLONG;
 
 #ifndef NULL
- #if defined(__SMALL__) || defined(__MEDIUM__) || defined(__386__) || defined(__AXP__) || defined(__PPC__)
-  #define NULL   0
- #else
-  #define NULL   0L
- #endif
+#include <stdlib.h>
 #endif
 
 
